As computer-software applications become larger and more data intensive, disk-drive manufacturers often increase the data-storage capacities of data-storage disks by increasing the density of the stored servo and application data.
To increase the accuracy of a servo circuit as it reads the denser servo data from a data-storage disk, the manufacturer often codes the servo data. For example, as discussed below in conjunction with FIG. 4, the manufacturer may use a Gray code to code the servo data.
Unfortunately, if the manufacturer codes the servo data stored on a data-storage disk, then a disk drive that incorporates the disk often cannot incorporate conventional techniques—such as NRZ(Non Return to Zero)-NRZI (Non Return to Zero Interleave)-NRZ conversion—to compensate for a reverse-connected read head.
FIG. 1 is a plan view of a conventional disk drive 10, which includes a magnetic data-storage disk 12, a read-write head 14, an arm 16, and a voice-coil motor 18. The disk 12 is partitioned into a number—here eight—of disk sectors 20a-20h, and includes a number—typically in the tens or hundreds of thousands—of concentric data tracks 22a-22n. Readable-writable application data is stored in respective data sectors (not shown) within each track 22. Under the control of the disk drive's head-position circuit (not shown in FIG. 1), the motor 18 moves the arm 16 to center the head 14 over a selected track 22.
Referring to FIG. 2, conventional data servo wedges 24—only servo wedges 24a-24c are shown—include servo data that allows the head-position circuit (not shown in FIG. 2) of the disk drive 10 (FIG. 1) to accurately position the read-write head 14 (FIG. 1) during a data read or write operation. The servo wedges 24 are located within each track 22 at the beginning—the disk 12 spins counterclockwise in this example—of each disk sector 20. Each servo wedge 24 includes respective servo data that indentifies the location (track 22 and sector 20) of the servo wedge. Thus, the head-position circuit uses this servo data to position the head 14 over the track 22 selected to be read from or written to. The manufacturer of the disk drive 10 typically writes the servo wedges 24 onto the disk 12 before shipping the disk drive to a customer; neither the disk drive nor the customer alters the servo wedges 24 thereafter. Servo wedges like the servo wedges 24 are further discussed below in conjunction with FIG. 3 and in commonly owned U.S. patent application Ser. No. 09/783,801, filed Feb. 14, 2001, entitled “VITERBI DETECTOR AND METHOD FOR RECOVERING A BINARY SEQUENCE FROM A READ SIGNAL,” which is incorporated by reference.
FIG. 3 is a diagram of the servo wedge 24a of FIG. 2, the other servo wedges 24 being similar. Write splices 30a and 30b respectively separate the servo wedge 24a from adjacent data sectors (not shown). An optional servo address mark (SAM) 32 indicates to the head-position circuit (not shown in FIG. 3) that the read-write head 14 (FIG. 1) is at the beginning of the servo wedge 24a. A servo preamble 34 allows the servo circuit (not shown in FIG. 3) of the disk drive 10 (FIG. 1) to synchronize the sample clock to the servo signal (FIG. 5), and a servo synchronization mark (SSM) 36 identifies the beginning of a head-location identifier 38. The preamble 34 and SSM 36 are discussed in commonly owned U.S. Patent application Nos. 60/301,505 entitled “DATA-STORAGE DISK HAVING FEW OR NO SPIN-UP WEDGES AND METHOD FOR WRITING SERVO WEDGES ONTO THE DISK,” 60/301,504 entitled “CIRCUIT AND METHOD FOR DETECTING A SERVO WEDGE ON SPIN UP OF A DATA-STORAGE DISK”, 60/301,469 entitled “CIRCUIT AND METHOD FOR DETECTING A SPIN-UP WEDGE AND A CORRESPONDING SERVO WEDGE ON SPIN UP OF A DATA-STORAGE DISK”, 60/301,503 entitled “SERVO CIRCUIT HAVING A SYNCHRONOUS SERVO CHANNEL AND METHOD FOR SYNCHRONOUSLY RECOVERING SERVO DATA”, which are incorporated by reference. The location identifier 38 allows the head-position circuit to coarsely determine and adjust the position of the head 14 with respect to the surface of the disk 12 (FIG. 1). More specifically, the location identifier 38 includes a sector identifier 40 and a track identifier 42, which respectively identify the disk sector 20 and the data track 22—here the sector 20a and the track 22a—that contain the servo wedge 24a. Because the head 14 may read the location identifier 38 even if the head is not centered over the track 24a, the servo wedge 24a also includes head-position bursts A-N, which allow the head-position circuit to finely determine and adjust the position of the head 14.
FIG. 4 is a table of the Gray coded bit patterns 50 that form portions of the respective track identifiers 42 (FIG. 3) for sixteen adjacent tracks 0-15 (FIG. 2) and the corresponding uncoded bit patterns 52. The uncoded patterns 52 for adjacent tracks differ by only one bit. For example, the only difference between the patterns 52 for the tracks 0 and 1 is that the least significant (rightmost) bit for track 0 is logic 0, and the least significant bit for track 1 is logic 1. Similarly, the Gray coded patterns 50 for adjacent tracks differ by only a pair of bits, or a one-bit shift in a pair of logic 1's. For example, the only difference between the patterns 50 for the tracks 0 and 1 is that the pair of least significant bits for track 0 are logic 0, and the pair of least significant bits for track 1 are logic 1. Moreover, the only difference between the patterns 50 for tracks 2 and 3 are that the pair of least significant logic 1's in the pattern 50 for track 2 are shifted left by one bit in the pattern 50 for track 3.
Still referring to FIG. 4, the Gray coded patterns 50 allow the head-position circuit (not shown in FIG. 4) to determine the position of the read-write head 14 (FIG. 1) within ±1 track. More specifically, the tracks 22 (FIG. 1) are typically so close together that the head 14 often simultaneously picks up servo data from multiple tracks 22, particularly if the head is between two tracks 22. Consequently, the Gray coded patterns 50 are designed so that if the head 14 is between two tracks 22, it generates a servo signal (not shown in FIG. 4) that ideally represents the Gray coded pattern 50 of the closest of these two tracks, but of no other track. For example, if the head 14 is between tracks 2 and 3 but closer to the center of track 2 than to the center of track 3, then the servo signal ideally represents the coded pattern 50 in track 2. If there is noise or another disturbance on the servo signal, however, then a servo circuit (not shown in FIG. 4) may read the servo signal as representing track 3, hence the ±1 track accuracy in the position of the head 14. The head-position circuit uses this head-position information derived from the servo signal to position the head 14 over a desired track 22. Once the head-position circuit positions the head 14 over a desired track 22 such that the servo signal represents the pattern 50 of the desired track, the head-position circuit uses bursts A-N (FIG. 3) to center the head 14 over the desired track.
Referring again to FIG. 1, during the manufacture of the disk drive 10 the head 14 may be reverse connected, in which case it reverses the phase of, i.e., inverts, the servo data as it reads a servo wedge 24 (FIG. 2). Although not shown, the head 14 typically has two leads that are connected to a servo circuit (not shown in FIGS. 1-4). The person or machine that assembles the disk-drive 10 may reverse the leads. If the leads are reversed, then the head 14 will invert the servo signal, and thus the servo data. Consequently, if left uncorrected, the inverted servo data may cause the disk drive 10 to malfunction. Although the manufacture can test the disk drive 10 and reconnect the head leads if they are reversed, such testing is often costly and time consuming.
As discussed above, techniques such as NRZ-NRZI-NRZ conversion are often used to compensate for a reverse-connected read-write head 14. For example, the NRZ-NRZI-NRZ conversion converts data from one state to another such that the polarity of the resulting data recovered from the disk 12 (FIG. 1) is the same whether the leads of the head 14 are properly or reverse connected. That is, NRZ-NRZI-NRZ conversion eliminates the need to test the head connection because the recovered data has the correct polarity regardless of the polarity of the connection.
Unfortunately, referring to FIG. 4, NRZ-NRZI-NRZ conversion cannot be used with the Gray coded patterns 50 because it will destroy the characteristics of the patterns 50 that allow the head-position circuit (not shown in FIGS. 1-4) to determine the position of the read-write head 14 (FIG. 1) with ±1 track accuracy.